package com.yb.framework.core.base;

import java.util.List;

public interface BaseMapper<T extends BaseEntity> {
	
	// 插入记录
	int insert(T entity);
	
	// 更新记录
	int update(T entity);
	
	// 删除记录
	int deleteById(Long id);
	
	// 批量删除记录
	int deleteListByIds(Long[] ids);

	// 查找所有记录
	List<T> getAll();
	
	// 查找单条记录（精准查询）
	T getByEntity(T entity);
	
	// 批量查找记录（精准查询）
	List<T> getListByEntity(T entity);
	
	// 分页查找记录（模糊查询）
	List<T> getPageByEntity(T entity);
	
	// 根据ID查找记录
	T getById(Long id);
	
	// 根据IDs批量查找记录
	List<T> getListByIds(Long[] ids);
	
	// 根据IDs批量查找名称
	List<String> getNamesByIds(Long[] ids);
}
